Method and system for creating temporary visual indicia

ABSTRACT

The present invention relates to new and improved embodiments of systems and methods for using a “pen” input as a temporary pointer to highlight a portion of a document and having the “ink” disappear. In embodiments, a method and system for temporarily marking a portion of a document comprises sending a marking directive that produces a visual indicia on a document being viewed on two or more display devices connected over a network, waiting a period of time, and automatically erasing the visual indicia on the document being viewed on the two or more display devices.

TECHNICAL FIELD

The present invention relates generally to the creation and editing ofgraphical presentations. More particularly, the present inventionrelates to temporarily highlighting information in computer applicationdocuments.

BACKGROUND OF THE INVENTION

Computer networks, and especially the Internet, have allowed people touse computer systems to communicate data. One way in which computersystems communicate data is by sending documents electronically. Somesoftware applications have allowed computer systems to transferdocuments or other data quickly. With the fast transfers of data, peoplecan interact in near real-time to data or documents being shared betweentwo or more computer systems. An example of these near real-timeinteractions occurs in web meetings where two or more users in distantareas interact with and react to data transferred between theircomputers. In some web meetings, users also discuss the data over thephone while exchanging the electronic data between the computer systems.

Unfortunately, it is very difficult in many situations to focus on aportion or piece of data that is being viewed on the two or more remotecomputer systems. The web meetings are not in person, and normal humaninteractions such as pointing to, gesturing to, or drawing on a physicaldocument are not possible. Thus, users generally must permanently alterthe document during a web meeting and send the edits to the participantsto highlight or draw the attention of the participants to a certainportion of the document. The edits “dirty” the document by permanentlychanging the documents format or appearance. Either after the meeting orlater in the meeting users are forced to methodically erase the editsused to “highlight” portions of the document. The “dirtying” ofdocuments does not fairly duplicate the normal human interaction andwastes time in undoing the edits. It is with respect to these and otherconsiderations that the present invention has been made.

SUMMARY OF THE INVENTION

The present invention relates to new and improved embodiments of systemsand methods for using visual indicia to highlight a portion of adocument and having the visual indicia automatically disappear. In oneembodiment, a method for temporarily marking a portion of a documentcomprises sending a marking directive that produces a visual indicia ona document being viewed on two or more display devices connected over anetwork, waiting a period of time, and automatically erasing the visualindicia on the document being viewed on the two or more display devices.

In another embodiment of the present invention, a system comprises auser interface for providing temporary visual indicia. The userinterface interaction comprises receiving, within a document, an edit tothe document that creates the visual indicia, displaying the visualindicia in the document, waiting a period of time, and automaticallyerasing the visual indicia from the document.

In still another embodiment of the present invention, a system comprisescomponents for generating temporary visual indicia on a document viewedon two display devices. The components comprise a marking component thatproduces a marking directive upon input by a user and sends the markingdirective to the display devices to create the visual indicia, a clockcomponent that counts for a period of time, and an erasing componentthat erases the visual indicia in response to the clock componentreaching the period of time.

The invention may be implemented as a computer process, a computingsystem or as an article of manufacture such as a computer programproduct. The computer program product may be a computer storage mediumreadable by a computer system and encoding a computer program ofinstructions for executing a computer process. The computer programproduct may also be a propagated signal on a carrier readable by acomputing system and encoding a computer program of instructions forexecuting a computer process.

A more complete appreciation of the present invention and itsimprovements can be obtained by reference to the accompanying drawings,which are briefly summarized below, to the following detaileddescription of exemplary embodiments of the invention, and to theappended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an exemplary embodiment of a peer-to-peer computer system withcorresponding user interfaces for generating a temporary visual indiciaonto a document displayed by two or more display devices connected to anetwork according to the present invention.

FIG. 2 is a functional diagram illustrating a computing environment anda basic computing device that can operate in the peer-to-peer computersystem according to the present invention.

FIG. 3 is an exemplary embodiment of a peer-to-peer computer system forsending marking directives and automatically erasing visual indicia on adocument displayed by two or more display devices connected to a networkaccording to the present invention.

FIG. 4 is a flow diagram of an exemplary embodiment of a method forgenerating a temporary visual indicia according to the presentinvention.

FIG. 5 is a flow diagram of another exemplary embodiment of a method forgenerating a temporary visual indicia according to the presentinvention.

DETAILED DESCRIPTION OF THE INVENTION

The present invention will now be described more fully hereinafter withreference to the accompanying drawings, in which embodiments of theinvention are shown. The invention may however, be embodied in manydifferent forms and should not be construed as limited to theembodiments set forth herein. Rather, these embodiments are provided sothat the disclosure will be thorough and complete and will fully conveythe scope of the invention to those skilled in the art.

An exemplary peer-to-peer computer system 100 that generates a temporaryvisual indicia is shown in FIG. 1. It should be noted that the presentinvention is explained as employed in a peer-to-peer computer system.However, as one skilled in the art, the present invention may beemployed in other computer architectures and is not limited to theembodiments set forth herein. As used herein, a “computer system” shallbe construed broadly and is defined as “one or more devices or machinesthat execute programs for displaying and manipulating text, graphics,symbols, audio, video, and/or numbers.” The peer-to-peer computer system100 shows the peer-to-peer system 102 at a first time and the samepeer-to-peer system 104 at a second, later time. The peer-to-peer system102 consists of at least two computer systems 106 and 108 connected by anetwork 110. Any number of computer systems may be connected together inembodiments of the present invention, but, for ease of explanation, theembodiments shown will have only two computer systems 106 and 108connected together. A network 110 is any group of computers andassociated devices that are connected by communication facilities. Thenetwork 110 can be any intranet or internet, such as the Internet or theWorld Wide Web. In one embodiment, the connection between the computersystems 106 and 108 is facilitated by a communication softwareapplication, such as the DirectPlay® application programming interfaceoffered by Microsoft® Corporation of Redmond, Wash., that allows thenear real-time sharing of documents or data between the two or moreconnected computer systems 106 and 108.

The computer systems 106 and 108 display information on a displaydevice, such as display screen 112 and/or 114. The display screen 112 isenlarged to show details of the display. In embodiments of the presentinvention, the display 112 and/or 114 relates to a peer-to-peerapplication 116 and/or 118, such as Microsoft® OneNote® note-takingprogram offered by Microsoft® Corporation of Redmond, Wash. Thepeer-to-peer application can be any program that can broadcast data toother computers over a network. In one embodiment, the peer-to-peerapplication is a web meeting software application. In embodiments of thepresent invention, the peer-to-peer applications 116 and 118 jointlydisplay the same document 120. The document 120 is a container for anytype of information, such as a text document, a graphics document, aspreadsheet document, etc. Importantly, although the peer-to-peerapplications 116 and 118 display a document 120, many other types ofcontent may be managed and displayed in accordance with the presentinvention, and thus, the document example is not meant as a limitationbut merely as an illustration.

In the example shown in FIG. 1, the peer-to-peer application 116 has atitle bar 122, a tool bar 124, and document window 126. There may beother windows for managing other information as indicated by scroll bar128. Tool bar 124 provides user controls such as an open control 130 anda “pen as pointer” control 132, among potentially many others. Such userinterface controls are generally known in the art and are useful inmanaging certain types of information.

Within document window 126, there is a set of content, such as content134. In this particular example, document window 126 displays content134 for the ABC Document. The document may have more content than thatshown as represented by the ellipses 136. In addition to the content134, the document window 126 displays visual indicia 138. In embodimentsof the present invention, visual indicia 138 is any type of visualdisplay in the document 120 that can draw the attention of a user to thecontent 134 highlighted by the visual indicia 138. In particularembodiments, the visual indicia 138 is a mark created with a “pen”utility, as shown by visual indicia 138. Other visual indicia 138 cancomprise “highlighting,” font changes, graphic components, special textor writing, or other editing that a user can produce with the userinterface. The visual indicia 138 is shared with the other computersystems in the peer-to-peer system 102. As such, document window 140also displays the visual indicia 138. The visual indicia 138 is createdon both display windows 126 and 140 shortly after a user creates thevisual indicia 138 in the ABC document 120.

In order to create the visual indicia 138, a user may select, with acursor 144, the “Pen as Pointer” control 132. The “Pen as Pointer”control 132, in embodiments, transforms any edit action in the document120 into a marking action. The marking action is then sent to othercomputer systems, such as computer system 108. The application window126 and the visual indicia 138 will be discussed in more detail below,but in general, the visual indicia 138 displays a temporary mark in alldocuments connected to the peer-to-peer system 102. After a period oftime, the peer-to-peer system 104 automatically erases the visualindicia 138, and the content 142 is displayed without the visual indicia138 in the document 120. Thus, the computer system 100 providestemporary visual indicia similar to “disappearing ink.” The computersystem 100 provides advantages because a document 120 is not needlessly“dirtied” or altered to draw the attention of the users temporarily tosome portion of the document 120. Rather, the temporary visual indicia138 marks a document 120 to direct a user's attention and then willautomatically erase or disappear after a period of time.

An example of a suitable operating environment in which the inventionmay be implemented is illustrated in FIG. 2. The operating environmentis only one example of a suitable operating environment and is notintended to suggest any limitation as to the scope of use orfunctionality of the invention. Other well known computing systems,environments, and/or configurations that may be suitable for use withthe invention include, but are not limited to, personal computers,server computers, hand-held or laptop devices, multiprocessor systems,microprocessor-based systems, programmable consumer electronics, networkPCs, minicomputers, mainframe computers, distributed computingenvironments that include any of the above systems or devices, and thelike.

With reference to FIG. 2, an exemplary system for implementing theinvention includes a computing device, such as computing device 200. Inits most basic configuration, computing device 200 typically includes atleast one processing unit 202 and memory 204. Depending on the exactconfiguration and type of computing device, memory 204 may be volatile(such as RAM), non-volatile (such as ROM, flash memory, etc.), or somecombination of the two. The most basic configuration of the computingdevice 200 is illustrated in FIG. 2 by dashed line 206. Additionally,device 200 may also have additional features or functionality. Forexample, device 200 may also include additional storage (removableand/or non-removable) including, but not limited to, magnetic or opticaldisks or tape. Such additional storage is illustrated in FIG. 2 byremovable storage 208 and non-removable storage 210. Computer storagemedia includes volatile and nonvolatile, removable and non-removablemedia implemented in any method or technology for storage ofinformation, such as computer readable instructions, data structures,program modules, or other data. Memory 204, removable storage 208 andnon-removable storage 210 are all examples of computer storage media.Computer storage media includes, but is not limited to, RAM, ROM,EEPROM, flash memory or other memory technology, CD-ROM, digitalversatile disks (DVD) or other optical storage, magnetic cassettes,magnetic tape, magnetic disk storage or other magnetic storage devices,or any other medium which can be used to store the desired informationand which can be accessed by device 200. Any such computer storage mediamay be part of device 200.

Device 200 may also contain communications connection(s) 212 that allowthe device to communicate with other devices. Communicationsconnection(s) 212 is an example of communication media. Communicationmedia typically embodies computer readable instructions, datastructures, program modules, or other data in a modulated data signalsuch as a carrier wave or other transport mechanism and includes anyinformation delivery media. The term “modulated data signal” means asignal that has one or more of its characteristics set or changed insuch a manner as to encode information in the signal. By way of example,and not limitation, communication media includes wired media such as awired network or direct-wired connection, and wireless media such asacoustic, RF, infrared, and other wireless media.

Device 200 may also have input device(s) 214 such as keyboard, mouse,pen, voice input device, touch input device, etc. Output device(s) 216such as a display, speakers, printer, etc. may also be included. Thedevices 214 may help form the user interface 102 discussed above whiledevices 216 may display results 108 discussed above. All these devicesare well know in the art and need not be discussed at length here.

Computing device 200 typically includes at least some form of computerreadable media. Computer readable media can be any available media thatcan be accessed by processing unit 202. By way of example, and notlimitation, computer readable media may comprise computer storage mediaand communication media. Combinations of the any of the above shouldalso be included within the scope of computer readable media.

The computer device 200 may operate in a networked environment usinglogical connections to one or more remote computers (not shown). Theremote computer may be a personal computer, a server computer system, arouter, a network PC, a peer device, or other common network node, andtypically includes many or all of the elements described above relativeto the computer device 200. The logical connections between the computerdevice 200 and the remote computer may include a local area network(LAN) or a wide area network (WAN), but may also include other networks.Such networking environments are commonplace in offices, enterprise-widecomputer networks, intranets, and the Internet.

When used in a LAN networking environment, the computer device 200 isconnected to the LAN through a network interface or adapter. When usedin a WAN networking environment, the computer device 200 typicallyincludes a modem or other means for establishing communications over theWAN, such as the Internet. The modem, which may be internal or external,may be connected to the computer processor 202 via the communicationconnections 212, or other appropriate mechanism. In a networkedenvironment, program modules or portions thereof may be stored in theremote memory storage device. By way of example, and not limitation, aremote application programs may reside on memory device connected to theremote computer system. It will be appreciated that the networkconnections explained are exemplary and other means of establishing acommunications link between the computers may be used.

An exemplary system 300 with components for generating temporary visualindicia on two or more display devices is shown in FIG. 3. Inembodiments of the present invention, a network 310 connects two or morepeer-to-peer applications, such as peer-to-peer applications 302 and314. For ease of illustration and description, FIG. 3 shows only twopeer-to-peer applications 302 and 314 connected by the network 310. Thefirst peer-to-peer application 302 comprises a user interface 304. Auser interface may be any interface that can receive or provideinformation to a user. In some embodiments, the user interface is agraphical user interface that displays content on a display device. Auser opens or generates a document 306 that is displayed in the userinterface 304.

The user of the first peer-to-peer application 302 establishes a“meeting” with the other user of the second peer-to-peer application314. Establishing a “meeting” in such a system is explained in U.S.patent application Ser. No. 10/920,640, filed Aug. 18, 2004, andassigned to Microsoft® Corporation, which is incorporated by referenceherein in its entirety. Upon establishing the “meeting,” the user issuesa directive to share the document 306. The document 308 is transferredto the peer-to-peer application 302 to send to the other user. Inembodiments, the peer-to-peer application 302 broadcasts the document312 over the network 310. The second peer-to-peer application 314receives the document 312 and sends the document 316 to the seconduser's user interface 318. The document 320 is then displayed in theuser interface 316. The system 300 allows two or more people to view thesame document simultaneously.

In communicating information about the document 306, the user may desireto highlight or draw attention to a certain portion of the document 306.For example, in a web meeting, a user may wish to discuss only a smallportion of the shared document 306. However, the user may be unable toeffectively direct, to the appropriate portion of the document 306, theother user viewing the document 320 on a remotely connected computer314. Essentially, the user cannot provide a physical gesture or actionthat directs the other user's attention. Thus, the user needs to use atool in the web meeting to draw the other user's attention to thecorrect portion of the document 306.

In some embodiments, the user informs the peer-to-peer application 302that a future edit, to the document 306, should generate temporaryvisual indicia. In one embodiment, the user sends a “Pen as Pointer”input control signal 322. For example, the user selects a “Pen asPointer” control, such as control 132, which sends the directive orcontrol signal 322 to the peer-to-peer application 302. The peer-to-peerapplication 302 changes the state of one or more editing devices withinthe user interface 304 to input temporary visual indicia. For example,some programs have a pen input that allows a user to draw lines with themouse cursor in the user interface 304. The peer-to-peer application 302recognizes the “pen” input as an input for temporary visual indiciaafter receiving the “Pen as Pointer” 322. Other inputs may be the“highlighting” function that creates a colored background behind text,as seen in document 306 shown in FIG. 3, or a graphic input that place agraphic component, such as a red circle, over a portion of the document306. One skilled in the art will recognize other editing functions thatmay provide temporary visual indicia in accordance with aspects of thepresent invention. Alternatively, the application may be placed in atemporary edit mode, during which all edits are drawn in a temporarymanner, as described below, until the application is taken out of thetemporary edit mode.

The user then enters an edit into the document 306 to create visualindicia 338, such as a grey highlight shown in document 306 in FIG. 3.In embodiments of the present invention, the edit creates an “ink”directive 324 to the peer-to-peer application 302. In response to the“ink” directive 324, the peer-to-peer application completes-severalactions. In one embodiment, the peer-to-peer application broadcasts amark directive 328 over the network 310 to all other peer-to-peerapplications 314. The mark directive 328 includes all information torender the visual indicia 338, created by the edit in the document 306,on the second user's user interface 318. The peer-to-peer application314 receives the mark directive 328 and translates the mark directive328 into a draw ink function 330 that is sent to the user interface 318.As shown in FIG. 3, the document 320 also displays visual indicia 340 asa highlight to the text similar to document 306 corresponding to themark directive 328 and the draw ink function 330.

In one embodiment, peer-to-peer application 302 also starts a timer 326and, upon completion of a predetermined period of time, automaticallyerases the visual indicia. In one embodiment, the clock 326 counts for10 seconds. Upon reaching the end of the predetermined period of time,the clock 326, in one embodiment, sends an interrupt or notice to thepeer-to-peer application 302 that the predetermined period of time haselapsed. In another embodiment, the peer-to-peer application 302 polls aclock 326 and determines if the predetermined time has elapsed.

In response to the clock 326 reaching the end of the predeterminedperiod of time, the peer-to-peer application 302 sends an erase inkfunction 324 to the user interface 304 that erases the visual indicia338 from the document 306. In a further embodiment, the peer-to-peerapplication 302 issues an erase directive 332 over the network 310. Thesecond peer-to-peer application 314 receives the erase directive 332 andtranslates the directive 332 into an erase ink function 334 that is sentto the user interface 318. The user interface 318 erases the visualindicia 340 from the document 320 in response to receiving the erase inkfunction 334.

In another embodiment, when the peer-to-peer application 302 receivesthe “Pen as Pointer” input 322, the peer-to-peer application 302 changesthe “type” of ink used on the document 306 to a “disappearing ink” type.The peer-to-peer application 302 then receives an ink input 324 in“disappearing ink.” The peer-to-peer application 302 broadcasts a markdirective 328 that provides data about the visual indicia 338, which isin “disappearing ink.” Upon receiving the mark directive 328, thepeer-to-peer application 314 sends a draw ink function 330 to the userinterface 318 to generate the visual indicia 340 on the document 320. Inaddition, the peer-to-peer application 314 starts a timer 336 to timefor a predetermined period of time. In response to the predeterminedperiod of time having elapsed on the timer 336, the peer-to-peerapplication 314 sends an erase ink function 334 to the user interface318 to erase the visual indicia 340 from the document 320. Thus, in thisembodiment, the first peer-to-peer application 302 does not need to sendan erase directive 332 to have the visual indicia 338 and/or 340automatically disappear. Rather, the “disappearing ink” type datatransmitted with the mark directive 328 provide the data required forthe peer-to-peer application to know to automatically erase the visualindicia 340 after the period of time. In embodiments of the invention,data within the mark directive 328 also provides the duration for theperiod of time to wait before erasing the visual indicia 340.

It should be noted that the erase function 334 for document 320 may notoccur at the same moment in time as the erase function on document 306.The difference in time may occur because of time differences between thesending of the ink command 324 and the draw ink command 330. The timedifferences are attributable to the time required to send the markdirective 328 to the peer-to-peer application 314. While there may be atime difference in some embodiments, the disappearing ink functionappears, to each user, to function independently on each user interface318 and/or 304.

In another embodiment, the peer-to-peer application 314 receives anerase ink directive 334 from the user interface 318 before thepeer-to-peer application 314 either receives an erase directive 332 orthe clock 336 reaches the period of time. In this embodiment, thepeer-to-peer application 314 can immediately erase one or more of thevisual indicia 340 in the document 320. Allowing the user to erase thevisual indicia 340 before the expiration of the period of time providesthe user with control over the clutter on the user interface 318.

A user may enter two or more visual indicia into a document 306. Inembodiments of the present invention, each visual indicia starts a newclock 326 or 336 and either creates a new erase directive 332 and/or anew erase ink function 334. Thus, the documents 306 and 320 can displaymultiple visual indicia, which all disappear at different times. Inother embodiments, the system 300 works in reverse with the peer-to-peerapplication 314 also sending mark directives 328 and/or erase directives332 to the other peer-to-peer application 302. Thus, a second user mayenter a “pen as pointer” input 342 into the user interface 318. Then,any edits to the document 320 create visual indicia 340 that arebroadcast to the first peer-to-peer application 302.

In some embodiments, the mark directive 328 and the erase directive 332receive a higher or highest priority for transmission over the network310. The network 310 may be transmitting several communications betweenthe peer-to-peer applications 302 and 314. Each communication can have apriority for transmission. If a communication has a low priority, thelower priority communication may wait a period of time before thenetwork 310 transmits the lower priority communication as other higherpriority communications are first sent over the network 310. However,the mark directive 328 and the erase directive 332 may be timesensitive. In other words, when a mark 338 is placed on document 306,the mark 340 needs to appear on document 320 relatively quickly toensure that the users' conversation is not stilted waiting for theappearance of the marks 338 and/or 340. A delay of 10 seconds may be toolong in some situations, while a delay of 1 minute may be appropriate inother situations. Regardless, the network 310 can assign a higher orhighest priority for transmission to the mark directive 328 or erasedirective 332 to ensure there is not an unnecessary time delay betweenthe appearance of the marks 338 and 340 on the documents 306 and 320.

An exemplary method 400 for generating temporary visual indicia is shownin FIG. 4. First, send operation 402 sends a marking directive, such asmark directive 314, to display visual indicia, such as visual indicia138. In one embodiment, a peer-to-peer application, such as application302, broadcasts a mark directive over a network, such as network 310, toone or more other peer-to-peer applications, such as application 314. Ina further embodiment, the marking directive directs the connectedpeer-to-peer applications to render a visual indicia on a document, suchas document 306 and/or 320, displayed on a display device, such asdisplay device 304 and/or 318. Then, wait operation 404 waits a periodof time. In embodiments, the peer-to-peer application starts a clock,such as clock 326 and/or 336, to count for a period of time. Thepeer-to-peer application then waits for the clock to reach the period oftime.

In response to the predetermined period of time having elapsed, eraseoperation 406 automatically erases the visual indicia. In oneembodiment, the peer-to-peer application broadcasts an erase directive,such as erase directive 332, to direct the erasure of the visualindicia. In another embodiment, the peer-to-peer application sends anerase ink function, such function 334, to erase the visual indiciawithout receiving an erase directive. In all embodiments, no user inputis required to erase the visual indicia after sending the markingdirective. However, in some embodiments, the user may erase the visualindicia before the visual indicia are automatically erased.

A further embodiment of a method 500 for generating temporary visualindicia is shown in FIG. 5. In embodiments, exchange operation 502exchanges a document, such as document 306. In one embodiment, apeer-to-peer application, such as application 302, sends document data,such as document 312, to at least one other peer-to-peer application,such as application 314. The other peer-to-peer applications send thedocument to a user interface, such as user interface 318, to display thedocument. Then, receive operation 504 receives a “pen as pointer” input,such as input 322. In one embodiment, the user selects a pen as pointercontrol, such as control 132, with a cursor, such as cursor 144. The penas pointer input informs the peer-to-peer application that the inputthat follows is in “disappearing ink.”

Receive operation 506 then receives a pen input, such as input 138, in aportion of the document. In one embodiment, the user selects a drawingfunction in the user interface and uses the cursor to draw “pen like”visual indicia on the document. Then, send operation 508 sends a markingdirective, such as marking directive 328, to the other peer-to-peerapplications. In embodiments, the other peer-to-peer applicationstranslate the marking directive into a draw ink function, such asfunction 330, and render visual indicia, such as visual indicia 138, onthe document rendered in the display device, such as computer system108. In response to sending the marking directive, receiving the markingdirective, or receiving the pen input, start operation 510 starts aclock, such as clock 326 and/or 336. The clock counts for apredetermined period of time. In one embodiment, each peer-to-peerapplication starts its own clock. In another embodiment, only thepeer-to-peer application that sent the marking directive starts a clock.

In response to the clock counting for the period of time, eraseoperation 512 automatically erases the visual indicia from the document.In embodiments of the present invention, each peer-to-peer applicationerases the pen ink from the document. In another embodiment, optionalsend operation 514 sends an erase directive, such as erase directive332. In one embodiment, the peer-to-peer application sends an erasedirective to the other peer-to-peer applications. The other peer-to-peerapplications translate the erase directive into an erase ink function,such as function 334, that deletes the visual indicia from the document.

The present invention relates to software components, classes, andobject for generating temporary visual indicia. A Folder class providesobjects for managing data in a peer-to-peer application. Under theFolder class, a Section class provides objects for managing certaintypes of documents, such as text document, notes, spreadsheets, etc.Under the Section class, a Pages class provides objects to manageinstantiations of particular documents of a certain document typemanaged by the Section class. Pages objects may be text objects, imageobjects, etc. One object in the Pages class is an Ink object. Inkobjects have a property for type of ink. If the ink is to beautomatically erased, the ink object is a PointerInk object and has aproperty set that the ink should be automatically erased. When thePointerInk object is sent to another peer-to-peer application inresponse to a user interface action, the sending peer-to-peerapplication reads the property, starts the clock, and sends the markingdirective. In response to the clock reaching the predetermined period oftime, the peer-to-peer application sends an erase directive to deletethe PointerInk object.

Although the present invention has been described in language specificto structural features, methodological acts, and computer-readable mediacontaining such acts, it is to be understood that the present inventiondefined in the appended claims is not necessarily limited to thespecific structure, acts, or media described. One skilled in the artwill recognize other embodiments or improvements that are within thescope and spirit of the present invention. Therefore, the specificstructure, acts, or media are disclosed as exemplary embodiments ofimplementing the claimed invention. The invention is defined by theappended claims.

1. A computer program product encoding a computer program of instructions for executing a computer implemented method for temporarily marking a portion of document, the method comprising: sending a marking directive that produces a visual indicia on a document being viewed on two or more display devices connected over a network; waiting a predetermined period of time; and automatically erasing the visual indicia on the document being viewed on the two or more display devices.
 2. A computer program product defined in claim 1, further comprising: receiving a pen as pointer directive; and receiving one or more edits to the document that creates the visual indicia and requires a marking directive be sent corresponding to the visual indicia.
 3. A computer program product defined in claim 1, wherein waiting a predetermined period of time further comprises: in response to sending a marking directive, starting a clock to count for a predetermined period of time; and in response to the clock reaching the predetermined period of time, sending an erase directive to erase the visual indicia on the document being viewed on the two or more display devices.
 4. A computer program product defined in claim 1, wherein waiting a predetermined period of time further comprises: in response to receiving a marking directive, starting a clock to count for a predetermined period of time; and in response to the clock reaching the predetermined period of time, sending an erase directive to erase the visual indicia on the document being viewed on the two or more display devices.
 5. A computer program product defined in claim 4, wherein the marking directive includes data that specifies the visual indicia as disappearing ink, which is to be automatically erased.
 6. A computer program product defined in claim 1, further comprising: receiving an erase input to erase the visual indicia before the waiting the predetermined period of time; and erasing the visual indicia before waiting the predetermined period of time.
 7. In a computer system having a graphical user interface including a display and a user interface selection device, a method of providing a temporary visual indicia, comprising the steps of: receiving, within the document, a edit to the document that creates the visual indicia; displaying the visual indicia in the document; waiting a predetermined period of time; automatically erasing the visual indicia from the document.
 8. A computer system defined in claim 5, further comprising: receiving a pen as pointer input; and changing a state of the edit in the document to produce temporary visual indicia.
 9. A computer system defined in claim 5, wherein waiting a predetermined period of time further comprises: in response to receiving the edit, starting a clock to count for a predetermined period of time; and in response to the clock reaching the predetermined period of time, sending an erase function to erase automatically the visual indicia on the document.
 10. A computer system defined in claim 5, wherein the document is viewed on two or more display devices and the visual indicia is displayed on and erased from every display device.
 11. A computer program product encoding a computer program of instructions for executing computer executable components for generating a temporary visual indicia on a document viewed by on two display devices, the components comprising: a marking component that produces a marking directive upon input by a user and sends the marking directive to a display device to create the visual indicia; a clock component that counts for a predetermined period of time in response to a marking directive; an erasing component that erases the visual indicia in response to the clock component reaching the predetermined period of time.
 12. A computer program product defined in claim 11, wherein the marking component receives a pen as pointer directive and receives one or more edits to the document that creates the visual indicia and requires a marking directive be sent corresponding to the visual indicia.
 13. A computer program product defined in claim 11, wherein the clock component, in response to the marking component sending the marking directive, starts to count for a predetermined period of time.
 14. A computer program product defined in claim 11, wherein the clock component, in response to receiving the marking directive, starts to count for a predetermined period of time.
 15. A computer program product defined in claim 11, wherein the erase component, in response to the clock reaching the predetermined period of time, sends an erase directive to erase the visual indicia on the document being viewed on the two or more display devices.
 16. A computer program product defined in claim 11, wherein the marking directive includes data that specifies the visual indicia is disappearing ink, which is to be automatically erased.
 17. A computer program product defined in claim 11, wherein the erase component receives an erase input, from an user interface, to erase the visual indicia before the clock component counts for the predetermined period of time and the erase component erases the visual indicia before the clock component counts for the predetermined period of time.
 18. A computer system defined in claim 5, wherein the mark component receives a pen as pointer input and changes a state of an edit in the document to produce the visual indicia.
 19. A computer program product defined in claim 11, wherein the document is viewed on two or more display devices and the visual indicia is displayed on and erased from every display device.
 20. A computer program product defined in claim 11, wherein each display device comprises the mark component, the clock component, and the erase component and sends visual indicia to the other display devices. 